﻿using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FinancialManagement.Domain.Dto.SaleContract
{
    public class SaleContractAddDto
    {
        public int SaleContractId { get; set; }
        /// <summary>
        /// 客户id
        /// </summary>
        public int? ClientId { get; set; }
        /// <summary>
        /// 客户名称
        /// </summary>
        public string? ClientName { get; set; }
        /// <summary>
        /// 签约日期
        /// </summary>
        public DateTime? SCAgencyDate { get; set; }
        /// <summary>
        /// 合同主题
        /// </summary>
        public string? ContractTopic { get; set; }
        /// <summary>
        /// 合同编号
        /// </summary>
        public string? SCcontractNumber { get; set; }
        /// <summary>
        /// 起始日期
        /// </summary>
        public DateTime? SCStartDate { get; set; }
        /// <summary>
        /// 截至日期
        /// </summary>
        public DateTime? SCEndDate { get; set; }
        /// <summary>
        /// 我方代表
        /// </summary>
        public string? SCPeople { get; set; }
        /// <summary>
        /// 对方代表
        /// </summary>
        public string? SCCountpartPeople { get; set; }

        /// <summary>
        /// 合同类别
        /// </summary>
        public string? SCContractType { get; set; }
        /// <summary>
        /// 销售人员id
        /// </summary>
        public int? SCSalespeopleId { get; set; }
        /// <summary>
        /// 销售人员
        /// </summary>
        public string? SCSalespeople { get; set; }

        /// <summary>
        /// 制单人员
        /// </summary>
        public string? DocumentMakers { get; set; }
        /// <summary>
        /// 制单日期
        /// </summary>
        public string? DocumentTime { get; set; }
        /// <summary>
        ///  合同金额
        /// </summary>
        public decimal? SCcontractPrice { get; set; }
        /// <summary>
        /// 优惠金额
        /// </summary>
        public decimal? SCPreferentialPrice { get; set; }
        /// <summary>
        /// 优惠后金额
        /// </summary>
        public decimal? PreferentialPrice { get; set; }
        /// <summary>
        /// 运杂费
        /// </summary>
        public decimal? SundryPrice { get; set; }
        /// <summary>
        /// 收货人
        /// </summary>
        public string? SCReceivPeople { get; set; }
        /// <summary>
        /// 手机号码
        /// </summary>
        public string? SCRePhone { get; set; }
        /// <summary>
        /// 省
        /// </summary>
        public int? ProvinceId { get; set; }
        /// <summary>
        /// 市
        /// </summary>
        public int? CityId { get; set; }
        /// <summary>
        /// 详细地址
        /// </summary>
        public string? SCAddress { get; set; }
        /// <summary>
        /// 数量合计
        /// </summary>
        public int? SCNum { get; set; }
        /// <summary>
        /// 税额总计
        /// </summary>
        public decimal? SCTax { get; set; }
        /// <summary>
        ///预生产id
        /// </summary>
        public int? PreProductionId { get; set; }
        /// <summary>
        ///关联id
        /// </summary>
        public int? RelevancyId { get; set; }
        /// <summary>
        ///关联项目
        /// </summary>
        public string? RelevancyIName { get; set; }
        /// <summary>
        /// 出库状态
        /// </summary>
        public int? SCOutState { get; set; }
        /// <summary>
        /// 发货状态
        /// </summary>
        public int? SCShipmentState { get; set; }

        /// <summary>
        /// 应收账款id
        /// </summary>
        public int AccountReceivableId { get; set; }

        /// <summary>
        /// 添加人姓名
        /// </summary>
        public string? AddName { get; set; }

        /// <summary>
        /// 添加时间
        /// </summary>
        public DateTime? AddTime { get; set; }
        /// <summary>
        /// 修改人姓名
        /// </summary>
        public string? UpdName { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? UpdTime { get; set; }
        /// <summary>
        /// 公司id
        /// </summary>
        public string? Office_Id { get; set; }

        /// <summary>
        /// 用户id
        /// </summary>
        public int? User_Id { get; set; }
        public List<SaleContractProduct> SaleContractProductDto { get; set; }
    }
    public class SaleContractProduct
    {
        public int SaleContractProductId { get; set; }
        public string? SCcontractNumber { get; set; }
        /// <summary>
        /// 产品id
        /// </summary>
        public int? ProductId { get; set; }
        /// <summary>
        /// 产品名称
        /// </summary>
        public string? PName { get; set; }
        /// <summary>
        /// 产品编号
        /// </summary>
        public string? PNumber { get; set; }
        /// <summary>
        /// 数量
        /// </summary>
        public int? SCPNum { get; set; }

        /// <summary>
        /// 未税单价
        /// </summary>
        public decimal? TaxPrice { get; set; }
        /// <summary>
        /// 折扣
        /// </summary>
        public int? Discount { get; set; }
        /// <summary>
        /// 票据类型
        /// </summary>
        public string? BillType { get; set; }
        /// <summary>
        /// 明细优惠
        /// </summary>
        public string? DetailsPreferential { get; set; }
        /// <summary>
        /// 税额
        /// </summary>
        public decimal? TaxLines { get; set; }
        /// <summary>
        /// 交货日期
        /// </summary>
        public DateTime? DeliveryTime { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string? SRemark { get; set; }
        /// <summary>
        /// 库存信息
        /// </summary>
        public string? SInventory { get; set; }
        /// <summary>
        /// 添加人姓名
        /// </summary>
        public string? AddName { get; set; }

        /// <summary>
        /// 添加时间
        /// </summary>
        public DateTime? AddTime { get; set; }
        /// <summary>
        /// 修改人姓名
        /// </summary>
        public string? UpdName { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? UpdTime { get; set; }
        /// <summary>
        /// 公司id
        /// </summary>
        public string? Office_Id { get; set; }

        /// <summary>
        /// 用户id
        /// </summary>
        public int? User_Id { get; set; }
    }





}
